home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d17 / docsmash.arc / DOCSMASH.DOC next >
Text File  |  1989-07-27  |  13KB  |  242 lines

  1. DOCSMASH -- By David W. Rettger
  2. ===============================
  3.  
  4. DOCSMASH may be copied and passed to other users as long as this
  5. document file accompanies the executable program file and both are
  6. left intact.  No party other than the author may change the
  7. contents of these files, or charge any fee for distribution (other
  8. than a nominal sum to cover the cost of a floppy disk and mailing
  9. fees).
  10.  
  11. If you have benefitted from the use of DOCSMASH, please contribute
  12. towards the costs of creating and updating this program by sending
  13. $5.00 to:
  14.  
  15.                 David Rettger
  16.                 Box 807, CBOT Annex
  17.                 141 W. Jackson Blvd.
  18.                 Chicago, Il. 60604
  19.  
  20. ==================================================================
  21.  
  22. DOCSMASH.EXE  --  Version 2.93
  23.  
  24. Have you ever downloaded a complicated program that came with its
  25. own manual and, when you printed the manual, you ended up using
  26. what seems like your whole box of paper to get hard copy?  If you
  27. have this problem, then DOCSMASH is for you!  It will print a
  28. normal 100 page document on a maximum 25 sheets of paper.  You do
  29. not lose any text, but you may need glasses to read it.  Anyway,
  30. it is good at what it does.
  31.  
  32. The DOCSMASH program is designed to reduce the size of the printed
  33. output of any text or document file.  It uses EPSON control codes
  34. to reduce the print size and adjust line width to enable the
  35. printer to place four pages of normal documentation on a single
  36. sheet of paper.  (Each of these 4 pages equals one DOCSMASH page
  37. for purposes of describing things below.)  New with this version is the
  38. ability to use other than Epson printers.  See the instructions below for
  39. this feature.
  40.  
  41. Obviously, a dot matrix printer is required.
  42.  
  43. A few users have tried to DOCSMASH documents created by a word
  44. processor.  Word processors usually insert "soft" codes into their
  45. files for tabs, pagination, etc.  These codes do a great job of
  46. confusing DOCSMASH.  Only smash files which are pure ASCII
  47. text!  If you want to smash a file from, say, WordPerfect you
  48. should first resave the file as ASCII text.
  49.  
  50. The program's operation is pretty straight forward.  Run the
  51. DOCSMASH.EXE program by typing the program name at the DOS prompt.
  52. Just follow the menus and prompts throughout the program and you
  53. should not have too many problems.  At any time, hit F10 (and
  54. perhaps <RETURN>) to terminate DOCSMASH.  Some machines
  55. refuse to quit when this command is issued.  If all else fails,
  56. when asked to enter the name of a document to print, you may now type
  57. the word END to quit the program.
  58.  
  59. As time has passed, I have received comments from users with various
  60. different types of "Epson Compatible" printers.  It seems that
  61. the width, line height, etc. settings which seem optimal on my printer
  62. don't function quite right on theirs.  This situation has prompted
  63. me to add yet another feature to DOCSMASH.  Now you are asked to
  64. enter the phrase "RESET PARAMS" to set the printer parameters.  You
  65. can adjust the print width, number of lines per DOCSMASH page, the
  66. line feed width, and the paper length (in inches).  Defaults are:
  67.  
  68.          Print Width = 164
  69.          Page Length = 58
  70.          Line Feed   = 17
  71.          Paper Len.  = 11
  72.          Left Margin = 0
  73.  
  74. (Note: If you hit <RETURN> alone when DOCSMASH asks for a document to
  75. print, the program will now assume that you entered RESET PARAMS and
  76. take you to the parameter reset menu.)
  77.  
  78. On my wide carriage printer, I use a setting of 164 for the printer
  79. width.  That allows for two sets of columns of 80 characters and the
  80. four spaces between the columns.  I have been told that a certain
  81. IBM narrow carriage printer runs best on about a 130 setting.  This 130
  82. setting will allow 63 characters per print column which should work
  83. most the time.  Words that do not fit should wrap to the next line.
  84. You should try to go as wide as possible, to maximize the squashing that
  85. the program is trying to do.  Wrapping to the next line will take up more
  86. space vertically.  (Here's a hint on setting the width if you have to.
  87. Just leave the default setting, run a full page and wait until the
  88. program prints dashes between the DOCSMASH pages.  If those dashes
  89. wrap to a second line, count how many wrap and subtract that amount
  90. from the default setting.)
  91.  
  92. I included page length and line-feed height adjustments due to complaints
  93. from users with 24 pin printers.  These printers do not seem to function
  94. the same as 9 pin printers when emulating Epson commands.  They tend to
  95. run over to the next page with my default settings.  If the defaults
  96. wrap to the next page on your printer, try adjusting line height, # of
  97. lines to print, etc. 
  98.  
  99. Very recently I received a copy of a document printed by DOCSMASH on an
  100. Epson FX-80 or some such Epson printer.  I was amazed at just how large
  101. the print was.  My Brother M1509 prints much smaller than that Epson. 
  102. Anyway, that narrow carriage printer could handle only a width of 94
  103. characters.  Mine runs great on 164 characters.  Obviously, the amount
  104. of print compression you achieve will depend on the hardware you are
  105. using.  (Note:  I believe this problem occurred because the elite print
  106. instruction sent by DOCSMASH had cancelled the compressed print
  107. instruction on this printer.  Now you can solve this problem.  See
  108. below.)
  109.  
  110.  
  111. Another minor change has been made to this latest version of DOCSMASH. 
  112. One potential user requested that he be able to set the left margin so
  113. he need not readjust the paper in his printer (already set to work with
  114. the margins used by WordPerfect).  Now the RESET PARAMS menu includes the
  115. left margin adjustment.  The preset default is Left Margin = 0.  On a
  116. narrow carriage printer, setting much of a left margin will eat into the
  117. total amount of print compression you can achieve.
  118.  
  119. DOCSMASH will create a file called DOCSMASH.CFG in the root directory of
  120. whatever the current drive is.  This file will contain any parameters
  121. you choose to enter, or the defaults.  Deleting this file will cause
  122. DOCSMASH to recreate the file with defaults and to prompt you again
  123. that you can type RESET PARAMS to make changes.  (Old versions left
  124. the .CFG file in whatever subdirectory you happened to be in.  That
  125. will no longer happen.)
  126.  
  127. In the event that a printer problem occurs during a long print job
  128. (out of paper, your child pulls out the plug, etc.), you may now
  129. begin printing in the middle of a file.  Follow the prompts to the
  130. point where it says to enter a phrase and it will search for that
  131. phrase.  I have in mind documents that have a page number on each
  132. page.  If you got to Page 35 and then ran out of paper, having it
  133. search to the phrase PAGE 35 would cause it to begin printing on
  134. the line FOLLOWING the one with the specified phrase.
  135.  
  136. The major change in Version 2.9 concerns printers which are not Epson
  137. compatible.  You should now be able to use them.  You will have to
  138. get the printer control codes from your manual and create a new
  139. printer control file.  Here's how to do it:
  140.  
  141. When prompted to enter a document title, type RESET PRINTER instead.
  142. The screen will show the various controls used to achieve the default
  143. squashing, the printable portions of the codes and the ASCii codes
  144. of each component of the strings.  On the right side of the screen is
  145. a column for entering new codes.  Move the highlighted bar with the
  146. up/down cursor control keys to the code you wish to change.  Now you type
  147. the new code.  For instance, the Epson code to reset the printer is as
  148. follows:
  149.  
  150.                                Esc @
  151.  
  152. To type this code, hit the Escape key and then the @ key (shift 2).  Hit
  153. <Return> to enter the code, or up/down to next item.  To delete an item
  154. entirely, simply type either the word NULL or the word NONE.  Any string
  155. of code entered may be up to 7 characters long.
  156.  
  157. Here's an example of a slightly different entry.  The Epson code for
  158. changing the line feed height to 17/216th's of an inch is as follows:
  159.  
  160.                               Esc 3 n
  161.  
  162. In this case, you replace n with 17 (17 / 216th's).  Now, you can not
  163. just type the number 17.  If you do, you are actually typing two single
  164. digits with the ASCii codes 31 and 37, respectively.  You need to type
  165. a single code which will have an ASCii value of 17.  Sound hard?  Its
  166. really quite easy.  Hold down the ALT key and, using the numeric keypad,
  167. hit the <1> and the <7>.  When you then release the ALT key, you will see
  168. a symbol that looks like a left pointing arrow.  This is the printable
  169. symbol for ASCii 17.  Any of the codes can be entered this way.  <Esc>
  170. is ASCii number 27.  Hold the ALT key and hit 2 and 7.  When you release
  171. ALT, you will see the same symbol as if you had hit the <Esc> key itself.
  172.  
  173. (Note: In the event you have to enter the character corresponding to
  174. ASCii code zero (NULL or chr$(0)) my method of entering these codes will
  175. not recognize the ALT-0 combination.  Therefore I chose what looked like
  176. an obscure combination as a substitute.  If you need to enter the Null
  177. character, enter instead ALT-255.  My program will see this and say "Oh
  178. you really wanted NULL".  Nothing will seem to print on the line becuase
  179. NULL is, obviously, unprintable.  However, when you <ENTER> the line you
  180. will see the 0 pop up under the ASCii listing of the printer code.)
  181.  
  182. Some printers (even some Epsons) can not mix elite and condensed print.
  183. One cancels the other.  In this case, just type NULL for the elite code.
  184. Just type in or delete codes as needed.  If your printer can make use of
  185. additional codes, I left space for two additional strings.  If you want
  186. to replace the string labeled "condensed" with some entirely different
  187. code, feel free.  Just remember, garbage in, garbage out!  (The only
  188. string that must be in the same place as shown on my menu is the Printer
  189. Reset code.  Be sure that you have that one entered properly, as the
  190. first entry on the menu.)
  191.  
  192. To exit this menu, hit < F10 >.  You will be asked if you want to save
  193. these new codes.  Answer yes or no.  If no, the codes you entered will
  194. be used for the current session only.  If yes, a file called DOCSMASH.PRN
  195. will be created on the root directory of the current drive.  It will
  196. contain these codes for future sessions.
  197.  
  198. If you are using special codes, the some of the entries under the
  199. RESET PARAMS menu will NOT BE FUNCTIONAL.  You still have to set the
  200. print width and page length there, but nothing else on that menu will
  201. work.  The special codes supercede any entries there.
  202.  
  203. Other changes from the earliest versions are:
  204.  
  205. -Screen color control.  If you do not like my choice of colors,
  206. or if you have a monochrome monitor, you can change the appearance
  207. of the screen output.  Hit your F1 key (and RETURN if needed) to
  208. get the color option menu.  For color monitors, I like the
  209. 15 (foreground), 1 (background) combination.  Mono monitor users
  210. should use a background setting of 0.
  211.  
  212. -No more truncating lines of text that are too wide to print.
  213.  
  214. -Progress reports during printing.  If you have an exceptionally
  215. long document, you can see how far you have gone and how far you
  216. have to go.  The "Lines sent to the printer" number reflects the
  217. number of lines sent to the print buffer, not the number of lines
  218. actually printed at that point.  A large print buffer will cause
  219. this number to be significantly ahead of the actual lines printed
  220. on paper.
  221.  
  222. -The program may be terminated by hitting <F10>.  If hitting <F10> does
  223. not terminate the program immediately, hit <RETURN> once.  Or, instead
  224. of typing the name of a document to print, type the word END .
  225. =================================================================
  226.  
  227. DOCSMASH was written using Borland's TURBO BASIC.  Their product
  228. provides a complete programming environment that makes compiled
  229. basic a pleasure to use.  If you are on the market for a basic
  230. compiler, I'd highly recommend TURBO BASIC!
  231.  
  232. =================================================================
  233. All of the above changes have come about as the result of comments
  234. left for me by users.  If you would like to see something changed
  235. or added, or if you just want to make a comment about the program,
  236. you may leave a message for David Rettger on the ORCHARD HILL BBS
  237. phone number (312) 974-0282.  (Orchard Hill has DOCSMASH available
  238. to non-registered users.  Call here for latest versions.  Also, if
  239. you are interested in an active BBS with a service oriented SYSOP,
  240. do consider this one!)  On Compuserv, leave me a message at my number
  241. 71131,3253.
  242.